In recent years, Over The Top Video (OTT-V) has become the mainstream of streaming service that uses the Internet. As an internationally standardized moving image delivery protocol that can be used for OTT-V, there is known Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP (MPEG-DASH; hereinafter, referred to as DASH) that uses the same HTTP as that for browsing Web sites, etc. (see, for example, Non-Patent Document 1).
In DASH, an adaptive streaming technique is implemented. Specifically, a content supplier prepares and delivers a plurality of streams of the same content with different bit rates for different image qualities, different angle-of-view sizes, etc. On the other hand, a content receiver selects an optimal stream from among the plurality of streams prepared by the supplier, according to a communication environment, decoding capability thereof, etc., and receives and plays back the selected stream, and further switches the stream being received to another according to a change in the communication environment, etc.
Note that the content supplier supplies a metafile called a Media Presentation Description (MPD) to the receiver so that the receiver can adaptively select, receive, and play back a stream.
The MPD describes an address (url information) of a WEB server (supply source) that supplies files of segment streams where content streams (media data such as Audio/Video/Subtitle) are chunked, in response to a request from the receiver. Based on the url information, the receiver accesses the WEB server serving as the content supply source, to request a file of a segment stream (hereinafter, also referred to as segment file), and receives and plays back the segment file which is HTTP-unicast from the server in response to the request.
FIG. 1 shows an example of a configuration of a content supply system that streams content based on DASH.
This content supply system 10 is composed of a plurality of viewing CH apparatuses 20 (20A, 20B, and 20C in this case) corresponding to respective channels through which content is delivered; and multiple DASH clients 30 which are the receiving side of the content. The DASH clients 30 can be connected to the viewing CH apparatuses 20 through a Contents Delivery Network (CDN) 12 that uses Internet 11.
The viewing CH apparatus 20A delivers, as a channel A, pieces of content of the same content by a plurality of streams with different bit rates. Likewise, the viewing CH apparatus 20B delivers, as a channel B, pieces of content of the same content that differ from the pieces of content of the channel A, by a plurality of streams with different bit rates. The viewing CH apparatus 20C is also the same. In the following, when the viewing CH apparatuses 20A, 20B, and 20C do not need to be individually distinguished from each other, they are simply referred to as the viewing CH apparatuses 20.
Each viewing CH apparatus 20 includes a content management server 21, a DASH segment streamer 22, and a DASH MPD server 23.
The content management server 21 manages source data of content which is supplied to the DASH clients 30, and generates a plurality of pieces of streaming data with different bit rates from the source data, and outputs the plurality of pieces of streaming data to the DASH segment streamer 22.
The DASH segment streamer 22 divides each piece of streaming data into segments in a temporal manner, and thereby generates a segment stream, e.g., fragmented MP4, and converts the segment stream into a file format on a segment-by-segment basis and holds the files, and notifies the DASH MPD server 23 of an address of a supply source of the files, as metadata. Furthermore, in response to an HTTP request from a DASH client 30 to request a file of a segment stream (hereinafter, also referred to as segment file), the DASH segment streamer 22 HTTP-unicasts, as a WEB server, the segment file to the request source.
The DASH MPD server 23 generates an MPD that describes, for example, the address indicating the supply source (i.e., the DASH segment streamer 22) of the segment files. In addition, in response to an HTTP request from the DASH client 30 to request an MPD, the DASH MPD server 23 HTTP-unicasts, as a WEB server, the generated MPD to the request source.
A DASH client 30 requests the DASH MPD server 23 for an MPD, and obtains the MPD which is HTTP-unicast in response to the request. In addition, based on the obtained MPD, the DASH client 30 requests the DASH segment streamer 22 for a segment file, and receives and plays back the segment file which is HTTP-unicast in response to the request.
Note that the CDN 12 includes a cache server (not shown), and the cache server caches MPDs and files of segment streams which are HTTP-unicast through the CDN 12. Then, instead of the DASH MPD server 23 or the DASH segment streamer 22 which serves as a WEB server, the cache server can HTTP-unicast a cached MPD or file of a segment stream to the DASH client 30 which is a request source.